The present disclosure relates generally to delivering and presenting multimedia content.
Streaming is a technique for delivering multimedia content to end-users. Streaming involves continuously displaying media content to a user while the content is being delivered to the user. Streaming can be used to deliver various types of digital media to end-users. Streaming media can include, for example, recorded (e.g., recorded video) and/or live media content (e.g., video from a user's webcam).
Publishers can create content for streaming by capturing and/or encoding content (e.g., audio and video). A streaming media server can then receive and transmit created streams over a network (e.g., the Internet) to a client device. The client device can include a client-side player that processes and displays streams to an end-user. Customized, client-side image viewers and video players can present streaming media to end-users. These customized applications can be used to facilitate web applications in providing interactive rich media content.
Streaming media environments can use virtual machines to present streaming content to end-users. A virtual machine is a self-contained operating environment that allows programs to be run within the virtual machine itself as though the virtual machine were a stand-alone computer. Virtual machines can be programs themselves, embedded within an operating system or other software application, or otherwise installed on a computer. One example of a virtual machine is the ADOBE® FLASH® Player runtime (available from Adobe Systems Incorporated of San Jose, Calif.), which can be used to run FLASH® files including ACTIONSCRIPT® and SWF files (e.g., files formatted according to the SWF File Format Specification (Version 10) as published by Adobe Systems Incorporated of San Jose, Calif. (http://www.adobe.com/devnet/swf/pdf/swf_file_format_spec_v10.pdf)).
A DVR (digital video recorder) cache can be used in streaming media environments. DVR streaming technology can involve recording or caching content (e.g., live video) at a server running a DVR application and then streaming the content to a client for viewing by a user. The content can be published to the server and cached at the server, and the content can then be displayed to the user while the content is being streamed from the server to the client. The user can navigate the stream using a user interface element, such as a scrub bar.